11.  objekt orientierte programmierung

11.3  spezielle elemente

11.3.1  klassen-konstante
Für eine klasse können konstanten (klassen-konstanten) vereinbart werden, die immer den typ public haben. Eine klassen-konstante kann überall verwendet werden, sie ist nicht an ein bestimmtes objekt gebunden, d.h. sie ist auch verfügbar, wenn für eine klasse keine objekte erzeugt sind.

const name = wert;

constschlüsselwort für die definition einer konstanten
namename der konstanten; der name darf nicht mit dem $-zeichen beginnen.
wertzugewiesener wert
self::nameso wird eine klassen-konstante innerhalb der klassendefinition angesprochen. Man beachte den doppelten doppelpunkt.
klasse::nameso wird eine klassen-konstante außerhalb der klassendefinition angesprochen. Man beachte den doppelten doppelpunkt.

11.3.2  statische eigenschaften
Eine eigenschaften kann als statisch deklariert werden; sie erhält meist bei der definition einen wert, der dann mit methoden der klasse oder, wenn sie den typ public oder protected hat, auch außerhalb einer methode verändert werden kann. Eine statische eigenschaft steht mit ihrem aktuellen wert immer zur verfügung. Die eigenschaft ist nicht an ein bestimmtes objekt gebunden, d.h. sie ist auch verfügbar, wenn für eine klasse keine objekte erzeugt sind.

[ typ ] static eigenschaft [ = wert ];

staticschlüsselwort zur definition eines statischen elements
eigenschaftname der eigenschaft, beginnt mit dem $-zeichen
wertanfangswert der eigenschaft
typtyp der eigenschaft, möglich ist private, protected, public (vgl. 11.1.1)
self::eigenschaftso wird eine statische eigenschaft innerhalb der klassendefinition angesprochen
klasse::nameso wird eine statische eigenschaft außerhalb der klassendefinition angesprochen (nur wenn sie den typ public oder protected hat)

11.3.3  statische methode
Auch eine methode kann als statisch deklariert werden, dazu wird dem namen der methode das schlüsselwort static vorangestellt, im übrigen vgl. 11.1.2. Eine statische methode ist einer klasse zugeordnet, wird aber nicht für objekte ausgeführt. Sie wird verwendet, um operationen auszuführen, die nicht einem bestimmten objekt gelten, allerdings kann als parameter eine referenz auf ein objekt übergeben werden.

self::methode
aufruf der methode innerhalb der klassen-definition

klasse::methode
aufruf der methode innerhalb und außerhalb der klassen-defintion

11.3.4  beispiel
Die definition der klasse Person enthält u.a. die klassen-konstante verein und die statische eigenschaft $nr. Beide werden im konstruktor und außerhalb der klassen-definition verwendet ($nr ist public). Die eigenschaft $nr erhält den anfangswert 0 und wird im konstruktor beim erzeugen eines objekts um 1 erhöht, d.h. die eigenschaft dient als zähler für die vorhandenen objekte. Außerdem wird $nr verwendet, um jedem objekt eine eindeutige identifikation zu geben.

In der PHP-routine werden drei objekte erzeugt und angezeigt; dazu wird die methode anzeige verwendet, mit der die anzeige etwas aufwendiger gestaltet wird. Die klassenkonstante und die statische eigenschaft werden auch außerhalb der klassenmethoden verwendet.

im FC Mau gibt es 3 mitglieder

nrnamevornameabteilungbeitrag
1001ValentinKarlFC Mau - 110.00
1002KarlstadtLieselFC Mau - 110.00
1003RembremerdengWrdlbrmftFC Mau - 110.00


zum untermenü


    IMPRESSUM  

    KONTAKT  

    PRIVAT  

    D O K U  


  H T M L  
  C S S  
  p h p
  My S Q L  
  JAVASCRIPT